import { createApp } from 'vue'
import App from './App.vue'
import router from './router'
import store from './store'
// 全局引入样式 + 各个子组件按需引用组件
import 'element-plus/theme-chalk/index.css'

import './serivce/axios_demo'
// import ccRequest from './serivce' // 自己封装 axios

// 导入 normalize.css
import 'normalize.css'
import '@/assets/css/index.less'
import { setupStore } from './store'
import { Apple } from '@element-plus/icons'
import { globalRegister } from '@/global'

// createApp(App).mount('#app')
const app = createApp(App)

// 下面3行代码原本的顺序是：
// app.use(router)
// app.use(store)
// 并且没有中间行：setupStore()
// 此情况下当地址栏中是：/main/system/user 时通过F5刷新会显示404
// 更换为下面3行后解决刷新404问题
app.use(globalRegister) // 全局注册
app.use(store)
setupStore() // 本行必须放在 app.use(router) 之前，否则在页面中 F5 会跳转到 notFound
app.use(router)

app.mount('#app')

// 下面是测试自己封装的 axios
// console.log(process.env.VUE_APP_BASE_URL)
// ccRequest.request({
//   url: '/home/multidata',
//   method: 'GET',
//   interceptors: {
//     requestInterceptor: (config) => {
//       console.log('单个请求的拦截器')
//       return config
//     },
//     responseInterceptor: (res) => {
//       console.log('单个响应的拦截器')
//       return res
//     }
//   }
// })
